A feature of some operating systems that allows them to run several programs at the same time in an efficient manner. The trick is that with pre-emptive multi-tasking, the operating system is always in control. It executes a program for a period of time, then passes control to the next program, so preventing any one program using all the processor time.